Combining Single-Space and Two-Space Compacting Garbage Collectors
نویسنده
چکیده
The garbage collector presented in this paper makes use of two well known compaction garbage collection algorithms with very diierent performance characteristics: Cheney's two-space copying collector and Jon-ker's single-space sliding compaction collector. We propose a scheme which allows either collector to be used. The run-time memory requirements of the program being executed are used to determine the most appropriate collector. This enables us to achieve a fast collector for heap requirements less than half of the heap memory but allows the heap utilization to increase beyond this threshold. Using these ideas we develop a particularly attractive extension to Appel's generational collector.
منابع مشابه
Garbage Collection Alternatives for Icon
Copying garbage collectors are becoming the collectors of choice for very high-level languages and for functional and object-oriented languages. Copying collectors are particularly efficient for large storage regions because their execution time is proportional only to the amount of accessible data, and they identify and compact this data in one pass. In contrast, mark-and-sweep collectors exec...
متن کاملCache-Conscious Copying Collectors
Garbage collectors must minimize the scarce resources of cache space and off-chip communications bandwidth to optimize performance on modern single-chip computer architectures. Strategies for achieving these goals in the context of copying garbage collection are discussed. A multi-processor mutator/collector system is analyzed. Finally, the Intel 80860XP architecture is studied.
متن کاملScalable Garbage Collection with Guaranteed MMU
Regional garbage collection offers a useful compromise between real-time and generational collection. Regional collectors resemble generational collectors, but are scalable: our main theorem guarantees a positive lower bound, independent of mutator and live storage, for the theoretical worst-case minimum mutator utilization (MMU). The theorem also establishes upper bounds for worst-case space u...
متن کاملParallel Garbage Collection with Larceny and Cilk
Automated memory management is becoming a standard feature for programming language runtimes. Requiring developers to explicitly release blocks of memory that they believe to be no longer in use often leads to space leaks and bugs. Also, requiring the developers to explicitly release memory leads to significant complication when interfacing different program modules. Therefore, many modern prog...
متن کاملNon-compacting Memory Allocation and Real-time Garbage Collection Dissertation Proposal
Garbage collection is the automatic reclamation of computer storage Knu73, Coh81, Wil92, Wil95]. While in many systems, programmers must explicitly reclaim heap memory at some point in their program by using a \free" or \dispose" statement, garbage collected systems free the programmer from this burden. In spite of its obvious attractiveness for many applications, garbage collection for real-ti...
متن کامل